<template>
	<view class="login-container">
		<uni-icons type="contact-filled" size="100" color="#AFAFAF"></uni-icons>
    <button type="primary" class="btn-login" open-type="getUserInfo" @getuserinfo="getUserInfo">一键登录</button>
    <text class="tips-text">登录后尽享更多权益</text>
	</view>
</template>

<script>
 const defaultAvatarUrl = 'https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0'
import {mapMutations} from 'vuex'
	export default {
		data() {
			return {

        userinfo:{},
			};
		},
    methods:{
      ...mapMutations('m_user',['updateUserInfo','updateToken']),
      //用户授权后，获取用户的基本信息
      getUserInfo(e){
        console.log(e.detail)
        this.updateUserInfo(e.detail.userInfo)
        this.getToken(e.detail)
          },
          
          
    async getToken(info){
         const [err,res] = await uni.login().catch(err=>err)
         if(err || res.errMsg !=='login:ok') return uni.$showMsg('登录失败!')
         console.log(res.code)
         const query={
           code:res.code,
           encryptedData:info.encryptedData,
           iv:info.iv,
           rawData:info.rawData,
           signature:info.signature
         }
         console.log(query)
         const {data:loginResult} = await uni.$http.post('/api/public/v1/users/wxlogin',query)
         // console.log(loginResult)
         // if(loginResult.meta.status !==200) return uni.$showMsg('登录失败！')
         uni.$showMsg('登录成功！')
         //保存假的token
         this.updateToken(query.code)
     }
    },
	}

</script>

<style lang="scss">
   pages,
    .login-container {
      height: 750rpx;
      background-color: #F8F8F8;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      .btn-login {
        width: 90%;
        border-radius: 100px;
        margin: 15px 0;
      }
      .tips-text {
        font-size: 12px;
        color: gray;
      }
    }
</style>
